export function dateFormater(fmt, date) {
    let ret;
    const opt = {
        "Y+": date.getFullYear().toString(),        // 年
        "m+": (date.getMonth() + 1).toString(),     // 月
        "d+": date.getDate().toString(),            // 日
        "H+": date.getHours().toString(),           // 时
        "M+": date.getMinutes().toString(),         // 分
        "S+": date.getSeconds().toString()          // 秒
        // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmt);
        if (ret) {
            fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        };
    };
    return fmt;
}

export function dateFormaters(fmts, dates) {
    let ret;
    const opt = {
        "Y+": dates.getFullYear().toString(),        // 年
        "m+": (dates.getMonth() + 1).toString(),     // 月
        "d+": (dates.getDate() + 1).toString(),            // 日
        "H+": dates.getHours().toString(),           // 时
        "M+": dates.getMinutes().toString(),         // 分
        "S+": dates.getSeconds().toString()          // 秒
        // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmts);
        if (ret) {
            fmts = fmts.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        };
    };
    return fmts;
}

export function dateFormaterss(fmts, dates) {
    let ret;
    const opt = {
        "Y+": dates.getFullYear().toString(),        // 年
        "m+": (dates.getMonth() + 1).toString(),     // 月
        "d+": (dates.getDate() + 3).toString(),            // 日
        "H+": (dates.getHours() + 2).toString(),           // 时
        "M+": (dates.getMinutes() + 3).toString(),         // 分
        "S+": (dates.getSeconds() + 3).toString()          // 秒
        // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmts);
        if (ret) {
            fmts = fmts.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        };
    };
    return fmts;
}